গুয়াভা (Guava) লাইব্রেরি Java-তে স্ট্রিং প্রক্রিয়াজাতকরণের জন্য বেশ কিছু শক্তিশালী এবং সুবিধাজনক Strings Utilities সরবরাহ করে। এই ইউটিলিটিগুলি স্ট্রিং ম্যানিপুলেশনকে সহজ, দ্রুত এবং আরও কার্যকরী করে তোলে। গুয়াভা লাইব্রেরির স্ট্রিং ইউটিলিটি ক্লাসগুলো মূলত স্ট্রিংয়ের বিভিন্ন সাধারণ অপারেশন যেমন কনভার্শন, চেকিং, এবং ম্যানিপুলেশনকে দ্রুত এবং পরিষ্কারভাবে সম্পাদন করতে সহায়ক।
গুয়াভা লাইব্রেরির স্ট্রিং ইউটিলিটিগুলির মধ্যে কিছু প্রধান ফিচার:
এই মেথডটি স্ট্রিংটি null
বা খালি (""
) কিনা তা চেক করতে ব্যবহার করা হয়। এটি খুবই কার্যকরী, কারণ এটি স্ট্রিংয়ের উপর সুনির্দিষ্টভাবে দুটি চেক করতে সহায়তা করে, যা সাধারণত অনেক কোডে বারবার করা হয়।
import com.google.common.base.Strings;
public class StringUtilitiesExample {
public static void main(String[] args) {
String str1 = null;
String str2 = "";
System.out.println(Strings.isNullOrEmpty(str1)); // true
System.out.println(Strings.isNullOrEmpty(str2)); // true
System.out.println(Strings.isNullOrEmpty("Hello")); // false
}
}
এখানে, Strings.isNullOrEmpty()
স্ট্রিংটি যদি null
বা খালি থাকে, তাহলে true
রিটার্ন করবে।
এই মেথডটি একটি null
স্ট্রিংকে খালি স্ট্রিং (""
) এ রূপান্তর করে। এটি তখন কার্যকরী হয় যখন আপনি null
স্ট্রিংয়ের সাথে কাজ করতে চান এবং এটিকে খালি স্ট্রিং হিসাবে প্রক্রিয়া করতে চান।
import com.google.common.base.Strings;
public class StringUtilitiesExample {
public static void main(String[] args) {
String str1 = null;
String str2 = "Hello";
System.out.println(Strings.nullToEmpty(str1)); // ""
System.out.println(Strings.nullToEmpty(str2)); // "Hello"
}
}
এখানে, Strings.nullToEmpty()
স্ট্রিংটির null
মানকে খালি স্ট্রিংয়ে রূপান্তরিত করে, যা পরে নিরাপদভাবে ব্যবহার করা যায়।
এই মেথডটি একটি স্ট্রিংকে নির্দিষ্ট দৈর্ঘ্য পর্যন্ত বাম দিক থেকে পূর্ণ (pad) করে। এটি সাধারণত সংখ্যার সামনে শূন্য বা নির্দিষ্ট অক্ষর যোগ করতে ব্যবহৃত হয়।
import com.google.common.base.Strings;
public class StringUtilitiesExample {
public static void main(String[] args) {
String str = "42";
System.out.println(Strings.padStart(str, 5, '0')); // "00042"
}
}
এখানে, Strings.padStart()
স্ট্রিংটির দৈর্ঘ্য ৫ পর্যন্ত বাড়াতে শূন্য যোগ করছে।
এই মেথডটি স্ট্রিংকে নির্দিষ্ট দৈর্ঘ্য পর্যন্ত ডান দিক থেকে পূর্ণ (pad) করে। এটি বাম দিকের মতো একইভাবে কাজ করে, তবে এখানে স্ট্রিংটি ডান দিক থেকে পূর্ণ করা হয়।
import com.google.common.base.Strings;
public class StringUtilitiesExample {
public static void main(String[] args) {
String str = "42";
System.out.println(Strings.padEnd(str, 5, '0')); // "42000"
}
}
এখানে, Strings.padEnd()
স্ট্রিংটির দৈর্ঘ্য ৫ পর্যন্ত বাড়াতে ডান দিক থেকে শূন্য যোগ করছে।
এই মেথডটি একটি স্ট্রিং নির্দিষ্ট সংখ্যক বার পুনরাবৃত্তি করে। এটি মূলত স্ট্রিংটির পুনরাবৃত্তি করতে ব্যবহৃত হয়, যেমন কয়েকটি বার একই স্ট্রিং প্রিন্ট করা।
import com.google.common.base.Strings;
public class StringUtilitiesExample {
public static void main(String[] args) {
String str = "abc";
System.out.println(Strings.repeat(str, 3)); // "abcabcabc"
}
}
এখানে, Strings.repeat()
স্ট্রিং "abc"
কে ৩ বার পুনরাবৃত্তি করেছে।
এই মেথডটি দুটি স্ট্রিংয়ের সাধারণ প্রিফিক্স (common prefix) খুঁজে বের করতে ব্যবহার করা হয়।
import com.google.common.base.Strings;
public class StringUtilitiesExample {
public static void main(String[] args) {
String str1 = "Guava";
String str2 = "Guitar";
System.out.println(Strings.commonPrefix(str1, str2)); // "Gu"
}
}
এখানে, Strings.commonPrefix()
দুটি স্ট্রিংয়ের সাধারণ প্রিফিক্স "Gu"
রিটার্ন করেছে।
যখন একটি স্ট্রিং null
থাকে, তবে তার পরিবর্তে এটি একটি খালি স্ট্রিংয়ে রূপান্তরিত হয়। এটি তখন কার্যকরী হয় যখন আপনি null
স্ট্রিংয়ের সাথে কাজ করতে চান এবং এটিকে খালি স্ট্রিং হিসেবে ব্যবহার করতে চান।
import com.google.common.base.Strings;
public class StringUtilitiesExample {
public static void main(String[] args) {
String str1 = null;
String str2 = "Non-null string";
System.out.println(Strings.nullToEmpty(str1)); // ""
System.out.println(Strings.nullToEmpty(str2)); // "Non-null string"
}
}
এখানে, Strings.nullToEmpty()
একটি null
স্ট্রিংকে খালি স্ট্রিংয়ে রূপান্তরিত করে।
null
চেকের জন্য Strings.isNullOrEmpty()
এবং Strings.nullToEmpty()
স্ট্রিংগুলি নিরাপদভাবে পরিচালনা করতে সাহায্য করে।গুয়াভা লাইব্রেরি Java-তে স্ট্রিং প্রক্রিয়াজাতকরণের জন্য শক্তিশালী এবং সহজে ব্যবহারযোগ্য ইউটিলিটি সরবরাহ করে। এই ইউটিলিটিগুলি স্ট্রিংয়ের null
চেক, প্যাডিং, রিপিটিং, কমন প্রিফিক্স খোঁজা ইত্যাদি সাধারণ কাজগুলিকে দ্রুত এবং কার্যকরীভাবে সম্পন্ন করতে সহায়ক। গুয়াভার স্ট্রিং ইউটিলিটি ক্লাস ব্যবহার করলে কোড লেখার সময় সময় এবং প্রচেষ্টা বাঁচানো সম্ভব, পাশাপাশি কোডের কার্যকারিতা ও নিরাপত্তা বৃদ্ধি পায়।
গুয়াভা লাইব্রেরি জাভা ডেভেলপারদের জন্য স্ট্রিং হ্যান্ডলিংয়ের জন্য বেশ কিছু শক্তিশালী এবং কার্যকরী মেথড সরবরাহ করে। স্ট্রিং ম্যানিপুলেশন প্রায় প্রতিটি জাভা অ্যাপ্লিকেশনে গুরুত্বপূর্ণ, এবং গুয়াভা লাইব্রেরি এই প্রক্রিয়াটি আরও সহজ এবং উন্নত করে তোলে।
গুয়াভা লাইব্রেরি স্ট্রিং হ্যান্ডলিংয়ের জন্য কিছু বিশেষ ফিচার সরবরাহ করে যা জাভার স্ট্যান্ডার্ড লাইব্রেরির চেয়ে আরও বেশি সুবিধা দেয়। এর মধ্যে সবচেয়ে গুরুত্বপূর্ণ দুটি মেথড হলো Joiner এবং Splitter। এই মেথডগুলি স্ট্রিং ম্যানিপুলেশনকে আরও দ্রুত এবং সহজ করে তোলে।
গুয়াভার Joiner
ক্লাস স্ট্রিংয়ের একটি集合 বা অ্যারের উপাদানগুলোকে একটি নির্দিষ্ট সেপারেটর দিয়ে যুক্ত করার জন্য ব্যবহৃত হয়। এটি মূলত অনেক স্ট্রিংকে একত্রিত করে একটি নতুন স্ট্রিং তৈরি করতে সাহায্য করে।
import com.google.common.base.Joiner;
public class GuavaJoinerExample {
public static void main(String[] args) {
String[] fruits = {"Apple", "Banana", "Orange"};
// Joiner ব্যবহার করে স্ট্রিং গুলি একত্রিত করা
String result = Joiner.on(", ").join(fruits);
System.out.println(result); // Output: Apple, Banana, Orange
}
}
এখানে, Joiner.on(", ").join(fruits)
স্ট্রিং অ্যারের সব উপাদানকে ", " দ্বারা আলাদা করে একত্রিত করেছে। এর ফলে একটি কমা দ্বারা আলাদা করা স্ট্রিং তৈরি হয়েছে।
গুয়াভার Splitter
ক্লাস স্ট্রিংয়ের একটি বড় পংক্তি (string) কে একটি নির্দিষ্ট সেপারেটর দ্বারা বিভক্ত করতে ব্যবহৃত হয়। এটি বড় স্ট্রিংকে ছোট ছোট অংশে ভাগ করতে সহায়তা করে।
import com.google.common.base.Splitter;
public class GuavaSplitterExample {
public static void main(String[] args) {
String fruits = "Apple, Banana, Orange";
// Splitter ব্যবহার করে স্ট্রিং বিভক্ত করা
Iterable<String> result = Splitter.on(", ").split(fruits);
for (String fruit : result) {
System.out.println(fruit);
}
// Output:
// Apple
// Banana
// Orange
}
}
এখানে, Splitter.on(", ").split(fruits)
কমা এবং স্পেস দ্বারা আলাদা করা স্ট্রিংগুলোকে পৃথক পৃথক উপাদানে বিভক্ত করেছে।
গুয়াভা লাইব্রেরি আরও কিছু স্ট্রিং ম্যানিপুলেশন মেথড প্রদান করে যা স্ট্রিং পরিচালনাকে আরও সহজ এবং কার্যকরী করে তোলে।
গুয়াভা লাইব্রেরিতে Strings
ক্লাস রয়েছে, যা বেশ কিছু স্ট্রিং সম্পর্কিত সহায়ক মেথড সরবরাহ করে। এর মধ্যে কিছু গুরুত্বপূর্ণ মেথড:
isNullOrEmpty: এটি চেক করে যে স্ট্রিংটি null
অথবা খালি (empty) কিনা।
import com.google.common.base.Strings;
public class GuavaStringsExample {
public static void main(String[] args) {
String str1 = "";
String str2 = null;
String str3 = "Hello";
System.out.println(Strings.isNullOrEmpty(str1)); // Output: true
System.out.println(Strings.isNullOrEmpty(str2)); // Output: true
System.out.println(Strings.isNullOrEmpty(str3)); // Output: false
}
}
nullToEmpty: এটি null
স্ট্রিংকে একটি খালি স্ট্রিংতে (empty string) রূপান্তরিত করে।
import com.google.common.base.Strings;
public class GuavaNullToEmptyExample {
public static void main(String[] args) {
String str1 = null;
String str2 = "Hello";
System.out.println(Strings.nullToEmpty(str1)); // Output: (empty string)
System.out.println(Strings.nullToEmpty(str2)); // Output: Hello
}
}
গুয়াভা লাইব্রেরি স্ট্রিংয়ের কেস (case) পরিবর্তন করার জন্যও কিছু কার্যকরী মেথড প্রদান করে, যেমন toUpperCase
এবং toLowerCase
। তবে, এটি আরও উন্নত কেস ফরম্যাটিং ফিচারও প্রদান করে।
CaseFormat: এটি স্ট্রিংয়ের কেস পরিবর্তন করতে ব্যবহৃত হয়, যেমন camelCase
থেকে snake_case
বা এর বিপরীত।
import com.google.common.base.CaseFormat;
public class GuavaCaseFormatExample {
public static void main(String[] args) {
String camelCase = "myVariableName";
String snakeCase = CaseFormat.LOWER_CAMEL.to(CaseFormat.LOWER_UNDERSCORE, camelCase);
System.out.println(snakeCase); // Output: my_variable_name
}
}
এখানে, CaseFormat.LOWER_CAMEL.to(CaseFormat.LOWER_UNDERSCORE, camelCase)
স্ট্রিংটি camelCase
থেকে snake_case
এ রূপান্তরিত করেছে।
Joiner
, Splitter
, এবং Strings
ক্লাসের মাধ্যমে স্ট্রিং হ্যান্ডলিং অনেক সহজ হয়ে যায়। এটি কোডকে আরও পরিষ্কার এবং পাঠযোগ্য করে তোলে।Joiner
এবং Splitter
কাস্টম সেপারেটর দিয়ে স্ট্রিং ম্যানিপুলেশন করার সুযোগ দেয়, যা স্ট্রিং হ্যান্ডলিংকে আরও ফ্লেক্সিবল করে তোলে।গুয়াভা লাইব্রেরির স্ট্রিং হ্যান্ডলিং মেথডগুলি জাভা ডেভেলপারদের স্ট্রিং ম্যানিপুলেশনকে আরও সহজ এবং কার্যকরী করে তোলে, যা কোড লেখার সময় সময় সাশ্রয়ী এবং কোডের গুণমান উন্নত করে।
Guava লাইব্রেরি Java ডেভেলপমেন্টে স্ট্রিং (String) ব্যবহারের জন্য বেশ কিছু সহায়ক ইউটিলিটি প্রদান করে, যার মধ্যে Strings.isNullOrEmpty()
এবং Strings.commonPrefix()
দুটি গুরুত্বপূর্ণ ফাংশন। এই দুটি মেথড স্ট্রিং সংক্রান্ত বেশ কিছু সাধারণ কাজকে আরও সহজ এবং কার্যকরী করে তোলে।
Strings.isNullOrEmpty()
মেথডStrings.isNullOrEmpty()
মেথডটি একটি স্ট্রিং মান যাচাই করার জন্য ব্যবহৃত হয়, এবং এটি চেক করে যে স্ট্রিংটি null
অথবা খালি (empty) কিনা। এটি স্ট্রিংয়ের মানের ওপর ভিত্তি করে একটি বুলিয়ান (Boolean) ফলাফল প্রদান করে।
null
চেক: এটি null
স্ট্রিং চেক করতে সাহায্য করে।""
) চেক করতে ব্যবহৃত হয়।null
এবং খালি স্ট্রিং এর মধ্যে পার্থক্য চিহ্নিত করতে সময় এবং কোড কম লাগে।import com.google.common.base.Strings;
public class GuavaExample {
public static void main(String[] args) {
String str1 = null;
String str2 = "";
String str3 = "Hello, World!";
System.out.println(Strings.isNullOrEmpty(str1)); // true
System.out.println(Strings.isNullOrEmpty(str2)); // true
System.out.println(Strings.isNullOrEmpty(str3)); // false
}
}
এই কোডটি দেখায় যে Strings.isNullOrEmpty()
মেথডটি null
এবং খালি স্ট্রিংকে সঠিকভাবে চিহ্নিত করে।
Strings.commonPrefix()
মেথডStrings.commonPrefix()
মেথডটি দুটি স্ট্রিংয়ের মধ্যে সর্বাধিক সাধারণ পূর্ববর্তী অংশ (common prefix) বের করে দেয়। এটি স্ট্রিংগুলির মধ্যে যে অংশটি প্রথমে মিলেছে, সেটি ফিরিয়ে দেয়। যদি দুটি স্ট্রিংয়ের মধ্যে কোনো মিল না থাকে, তবে এটি একটি খালি স্ট্রিং ফেরত দেয়।
import com.google.common.base.Strings;
public class GuavaExample {
public static void main(String[] args) {
String str1 = "guava_tech";
String str2 = "guava_tools";
System.out.println(Strings.commonPrefix(str1, str2)); // "guava"
}
}
এই কোডটি দেখায় যে দুটি স্ট্রিংয়ের মধ্যে সর্বাধিক সাধারণ পূর্ববর্তী অংশ "guava"।
Strings.isNullOrEmpty()
এবং Strings.commonPrefix()
এর সুবিধাnull
বা খালি স্ট্রিং চেক করার জন্য এক্সট্রা কোড যোগ করতে বাধ্য করে না।Strings.isNullOrEmpty()
স্ট্রিংয়ের অবস্থা দ্রুত যাচাই করার জন্য দ্রুত এবং কার্যকরী পদ্ধতি প্রদান করে, যেখানে Strings.commonPrefix()
স্ট্রিংয়ের সাধারণ অংশ বের করার জন্য উন্নত এবং কার্যকরী পদ্ধতি প্রদান করে।Guava লাইব্রেরি Java প্রোগ্রামিংয়ে স্ট্রিং সম্পর্কিত সাধারণ কাজগুলি সোজা করে তোলে, এবং এটি ডেভেলপারদের জন্য অনেক সময় বাঁচায়।
Guava লাইব্রেরি Java ডেভেলপারদের জন্য অনেক শক্তিশালী ইউটিলিটি প্রদান করে, যার মধ্যে একটি গুরুত্বপূর্ণ বিষয় হলো String Joining এবং Splitting। এটি আপনাকে সহজে এবং কার্যকরভাবে স্ট্রিংগুলোকে যুক্ত (join) এবং ভেঙে (split) ফেলার সুবিধা দেয়। Guava এর সাহায্যে আপনি স্ট্রিং অপারেশনগুলো আরও সুন্দর এবং পরিষ্কারভাবে করতে পারবেন, যা Java এর স্ট্যান্ডার্ড লাইব্রেরির তুলনায় আরো কার্যকরী ও নমনীয়।
এখানে আমরা Guava ব্যবহার করে String Joining এবং Splitting এর কৌশল নিয়ে আলোচনা করব।
Guava লাইব্রেরি String joining এর জন্য Joiner
ক্লাস প্রদান করে, যা স্ট্রিংগুলোর মধ্যে নির্দিষ্ট বিভাজক (delimiter) যোগ করে এবং স্ট্রিংগুলোকে একত্রিত করতে সহায়ক।
Joiner.on()
Joiner.on()
মেথডের মাধ্যমে আপনি একটি নির্দিষ্ট বিভাজক দিয়ে স্ট্রিংগুলিকে একত্রিত করতে পারেন। এটি একটি সহজ এবং প্রাঙ্কটিক্যাল পদ্ধতি।উদাহরণ:
import com.google.common.base.Joiner;
public class JoinExample {
public static void main(String[] args) {
// String গুলোকে কমা দিয়ে যোগ করা
String result = Joiner.on(", ").join("Apple", "Banana", "Cherry");
System.out.println(result); // আউটপুট হবে: Apple, Banana, Cherry
}
}
Null Safety
Joiner.on()
মেথডটি ডিফল্টভাবে null
মানকে উপেক্ষা (ignore) করে। তবে আপনি চাইলে null
মানকেও একটি ডিফল্ট মান দিয়ে প্রতিস্থাপন করতে পারেন।উদাহরণ:
String result = Joiner.on(", ").skipNulls().join("Apple", null, "Banana");
System.out.println(result); // আউটপুট হবে: Apple, Banana
অথবা, null
মানগুলিকে একটি নির্দিষ্ট টেক্সট দিয়ে প্রতিস্থাপন করা:
String result = Joiner.on(", ").useForNull("Unknown").join("Apple", null, "Banana");
System.out.println(result); // আউটপুট হবে: Apple, Unknown, Banana
Guava লাইব্রেরি String splitting এর জন্য Splitter
ক্লাস প্রদান করে। এটি স্ট্রিং ভেঙে নির্দিষ্ট বিভাজক বা নিয়ম অনুসারে স্ট্রিং এর একটি সংগ্রহ তৈরি করে।
Splitter.on()
Splitter.on()
মেথড দিয়ে আপনি একটি নির্দিষ্ট সিম্বল বা চরিত্র দিয়ে স্ট্রিংকে ভাগ করতে পারেন।উদাহরণ:
import com.google.common.base.Splitter;
public class SplitExample {
public static void main(String[] args) {
// কমা দিয়ে স্ট্রিংটি বিভক্ত করা
Iterable<String> result = Splitter.on(", ").split("Apple, Banana, Cherry");
for (String s : result) {
System.out.println(s);
}
// আউটপুট হবে:
// Apple
// Banana
// Cherry
}
}
Split by Regular Expressions
Splitter
শুধু নির্দিষ্ট সিম্বল নয়, আপনি রেগুলার এক্সপ্রেশন (regular expression) দিয়েও স্ট্রিং ভাগ করতে পারেন।উদাহরণ:
Iterable<String> result = Splitter.onPattern("\\s*,\\s*").split("Apple, Banana, Cherry");
for (String s : result) {
System.out.println(s);
}
Trim Results
Splitter
দিয়ে স্ট্রিং ভেঙে নেওয়ার পর আপনি চাইলে প্রতিটি উপাদানের আশেপাশের স্পেস (whitespace) কাটতে পারেন। Guava এর trimResults()
মেথড এর মাধ্যমে আপনি এটি করতে পারবেন।উদাহরণ:
Iterable<String> result = Splitter.on(", ").trimResults().split(" Apple , Banana , Cherry ");
for (String s : result) {
System.out.println(s);
}
// আউটপুট হবে:
// Apple
// Banana
// Cherry
Limit the Number of Results
Splitter
দিয়ে স্ট্রিংটি নির্দিষ্ট সংখ্যক অংশে ভাগ করতে পারবেন। এর জন্য limit()
মেথডটি ব্যবহার করা হয়।উদাহরণ:
Iterable<String> result = Splitter.on(", ").limit(2).split("Apple, Banana, Cherry");
for (String s : result) {
System.out.println(s);
}
// আউটপুট হবে:
// Apple
// Banana, Cherry
Handling Empty Strings
Splitter
এর মাধ্যমে খালি স্ট্রিংগুলি হ্যান্ডল করতে সহায়ক ফিচার প্রদান করে। আপনি চাইলে খালি উপাদানগুলিকে উপেক্ষা করতে পারেন বা রাখতে পারেন।উদাহরণ:
Iterable<String> result = Splitter.on(",").omitEmptyStrings().split("Apple,,Banana,,Cherry");
for (String s : result) {
System.out.println(s);
}
// আউটপুট হবে:
// Apple
// Banana
// Cherry
Guava লাইব্রেরি String Joining এবং Splitting এর জন্য অত্যন্ত শক্তিশালী এবং নমনীয় টুলস সরবরাহ করে। Joiner
এবং Splitter
ক্লাস ব্যবহার করে আপনি স্ট্রিং অপারেশনগুলো অনেক সহজ ও কার্যকরীভাবে করতে পারবেন। Guava এর এই ফিচারগুলো Java ডেভেলপমেন্টে স্ট্রিং ম্যানিপুলেশনকে আরও পরিষ্কার এবং সহজ করে তোলে।
Guava লাইব্রেরি জাভাতে স্ট্রিং ম্যানিপুলেশনকে সহজ, কার্যকরী এবং দ্রুত করে তোলে। এর মধ্যে কিছু শক্তিশালী ফিচার রয়েছে, যা স্ট্রিং অপারেশনকে আরও পরিষ্কার ও কোডিংয়ের কাজকে আরও সহজ করে তোলে। এই নিবন্ধে Guava ব্যবহার করে স্ট্রিং ম্যানিপুলেশনের কিছু বেস্ট প্র্যাকটিস (Best Practices) আলোচনা করা হলো।
Guava লাইব্রেরি স্ট্রিং ম্যানিপুলেশনের জন্য বেশ কিছু ইউটিলিটি প্রদান করে, যার মাধ্যমে আপনি স্ট্রিং নিয়ে কাজ করার সময় কোডকে সহজ ও ম্যানেজেবল রাখতে পারেন। এর মধ্যে প্রধান ফিচার গুলি হলো Joiner
, Splitter
, Strings
এবং CharMatcher
। এই সব ফিচার ব্যবহার করে আপনি আরও সুন্দর ও কার্যকরী কোড লিখতে পারবেন।
Joiner একটি Guava ক্লাস যা স্ট্রিংগুলিকে একত্রিত করতে ব্যবহার করা হয়। এটি বিশেষ করে ব্যবহারযোগ্য যখন আপনি একটি কোলেকশন (যেমন লিস্ট, সেট) থেকে স্ট্রিং একত্রিত করতে চান।
Joiner
ব্যবহার করে সহজে কোলেকশন থেকে স্ট্রিং একত্রিত করুন।import com.google.common.base.Joiner;
import java.util.List;
public class JoinerExample {
public static void main(String[] args) {
List<String> fruits = List.of("Apple", "Banana", "Cherry");
// ডিফল্ট ডেলিমিটার দিয়ে স্ট্রিং একত্রিত করা
String result = Joiner.on(", ").join(fruits);
System.out.println(result); // Output: Apple, Banana, Cherry
// নাল ভ্যালু সহ ডেটার জন্য Joiner ব্যবহার
List<String> fruitsWithNull = List.of("Apple", null, "Banana");
String resultWithNull = Joiner.on(", ").skipNulls().join(fruitsWithNull);
System.out.println(resultWithNull); // Output: Apple, Banana
}
}
Best Practice:
skipNulls()
ব্যবহার করে নাল মানগুলিকে এড়িয়ে চলুন।on()
মেথডে ডেলিমিটার হিসেবে কাস্টম চিহ্ন ব্যবহার করুন (যেমন: কমা, স্পেস, সেমিকোলন)।Splitter Guava লাইব্রেরির একটি শক্তিশালী ফিচার যা একটি স্ট্রিংকে নির্দিষ্ট ডেলিমিটার দ্বারা বিভক্ত করতে সহায়তা করে। এটি স্ট্রিং স্প্লিটিংয়ের কাজ সহজ করে তোলে।
Splitter
ব্যবহার করুন।omitEmptyStrings()
ব্যবহার করুন।import com.google.common.base.Splitter;
public class SplitterExample {
public static void main(String[] args) {
String fruits = "Apple, Banana, Cherry, ";
// স্প্লিট করা এবং খালি স্ট্রিং ফিল্টার করা
Iterable<String> result = Splitter.on(", ").omitEmptyStrings().split(fruits);
for (String fruit : result) {
System.out.println(fruit);
}
// Output: Apple, Banana, Cherry
}
}
Best Practice:
omitEmptyStrings()
ব্যবহার করে খালি স্ট্রিং গুলি ফিল্টার করুন।Splitter.onPattern()
ব্যবহার করুন।Guava এর Strings ক্লাস কিছু সাধারণ স্ট্রিং সম্পর্কিত কাজ সহজ করে তোলে, যেমন স্ট্রিং চেক করা বা স্ট্রিংকে একটি নির্দিষ্ট দৈর্ঘ্যে পূর্ণ করা।
Strings.isNullOrEmpty()
ব্যবহার করুন।Strings.padStart()
অথবা Strings.padEnd()
ব্যবহার করুন।import com.google.common.base.Strings;
public class StringsExample {
public static void main(String[] args) {
String text = "Guava";
// স্ট্রিং খালি বা নাল কি না চেক করা
System.out.println(Strings.isNullOrEmpty(text)); // Output: false
// স্ট্রিং প্যাড করা
String paddedText = Strings.padStart(text, 10, '*');
System.out.println(paddedText); // Output: *****Guava
}
}
Best Practice:
Strings.isNullOrEmpty()
ব্যবহার করুন।padStart()
এবং padEnd()
ব্যবহার করে স্ট্রিংয়ের দৈর্ঘ্য সমন্বয় করুন।CharMatcher Guava লাইব্রেরির একটি শক্তিশালী ক্লাস যা স্ট্রিংয়ের নির্দিষ্ট অক্ষর ফিল্টার করতে ব্যবহৃত হয়। এটি স্ট্রিংয়ের মধ্যে অক্ষর অনুসন্ধান, প্রতিস্থাপন এবং মুছে ফেলতে সহায়তা করে।
CharMatcher
ব্যবহার করুন।CharMatcher
ব্যবহার করুন।import com.google.common.base.CharMatcher;
public class CharMatcherExample {
public static void main(String[] args) {
String text = "Hello, Guava! ";
// অপ্রয়োজনীয় স্পেস মুছে ফেলা
String noSpaces = CharMatcher.whitespace().removeFrom(text);
System.out.println(noSpaces); // Output: Hello,Guava!
// শুধুমাত্র অক্ষর রেখে বাকি সব মুছে ফেলা
String onlyLetters = CharMatcher.JAVA_LETTERS.retainFrom(text);
System.out.println(onlyLetters); // Output: HelloGuava
}
}
Best Practice:
CharMatcher
ব্যবহার করুন।retainFrom()
ব্যবহার করুন।Guava লাইব্রেরি জাভাতে স্ট্রিং ম্যানিপুলেশনের জন্য অত্যন্ত কার্যকরী এবং সহজ টুল সরবরাহ করে। এর Joiner, Splitter, Strings, এবং CharMatcher ক্লাসগুলি স্ট্রিং অপারেশনগুলিকে আরও শক্তিশালী, পরিষ্কার এবং ম্যানেজেবল করে তোলে। এসব বেস্ট প্র্যাকটিস ব্যবহার করে আপনি আপনার কোডকে আরও পরিষ্কার, দক্ষ এবং রিডেবল করতে পারবেন। Guava-র এই ফিচারগুলোর মাধ্যমে স্ট্রিং সম্পর্কিত প্রায় সকল অপারেশন সহজেই পরিচালনা করা সম্ভব।
Read more